{
  "gcc_version": "9.3.0",
  "name": "-mabi",
  "range": [
	"ilp32",
	"lp64"
  ],
  "description": "Generate code for the specified data model."
},
{
  "gcc_version": "9.3.0",
  "name": "-mbig-endian",
  "range": [],
  "description": "Generate big-endian code."
},
{
  "gcc_version": "9.3.0",
  "name": "-mgeneral-regs-only",
  "range": [],
  "description": "Generate code which uses only the general-purpose registers."
},
{
  "gcc_version": "9.3.0",
  "name": "-mlittle-endian",
  "range": [],
  "description": "Generate little-endian code."
},
{
  "gcc_version": "10.1.0",
  "name": "-mcmodel",
  "range": [
	"tiny",
	"small",
	"large"
  ],
  "description": "Generate code for the tiny, small, large code model. The -mcmodel=large option is incompatible with -mabi=ilp32, -fpic and -fPIC."
},
{
  "gcc_version": "9.3.0",
  "name": "-mstrict-align",
  "range": [],
  "description": "Avoid generating memory accesses that may not be aligned on a natural object boundary as described in the architecture specification."
},
{
  "gcc_version": "9.3.0",
  "name": "-mno-strict-align",
  "range": [],
  "description": "Allow generating memory accesses that may not be aligned on a natural object boundary as described in the architecture specification."
},
{
  "gcc_version": "9.3.0",
  "name": "-momit-leaf-frame-pointer",
  "range": [],
  "description": "Omit the frame pointer in leaf functions."
},
{
  "gcc_version": "9.3.0",
  "name": "-mno-omit-leaf-frame-pointer",
  "range": [],
  "description": "Keep the frame pointer in leaf functions."
},
{
  "gcc_version": "9.3.0",
  "name": "-mstack-protector-guard",
  "range": [],
  "description": "Generate stack protection code using canary at guard."
},
{
  "gcc_version": "9.3.0",
  "name": "-mstack-protector-guard-reg",
  "range": [],
  "description": "Generate stack protection code using canary with base register."
},
{
  "gcc_version": "9.3.0",
  "name": "-mstack-protector-guard-offset",
  "range": [],
  "description": "Generate stack protection code using canary with base register which offset from."
},
{
  "gcc_version": "9.3.0",
  "name": "-mtls-dialect",
  "range": [
	"desc",
	"traditional"
  ],
  "description": "Use traditional TLS / TLS descriptors as the thread-local storage mechanism for dynamic accesses of TLS variables."
},
{
  "gcc_version": "9.3.0",
  "name": "-mtls-size",
  "range": [
	"12",
	"24",
	"32",
	"48"
  ],
  "description": "Specify bit size of immediate TLS offsets."
},
{
  "gcc_version": "9.3.0",
  "name": "-mfix-cortex-a53-835769",
  "range": [],
  "description": "Enable the workaround for the ARM Cortex-A53 erratum number 835769."
},
{
  "gcc_version": "9.3.0",
  "name": "-mno-fix-cortex-a53-835769",
  "range": [],
  "description": "Disable the workaround for the ARM Cortex-A53 erratum number 835769."
},
{
  "gcc_version": "9.3.0",
  "name": "-mfix-cortex-a53-843419",
  "range": [],
  "description": "Enable the workaround for the ARM Cortex-A53 erratum number 843419."
},
{
  "gcc_version": "9.3.0",
  "name": "-mno-fix-cortex-a53-843419",
  "range": [],
  "description": "Disable the workaround for the ARM Cortex-A53 erratum number 843419."
},
{
  "gcc_version": "9.3.0",
  "name": "-mlow-precision-recip-sqrt",
  "range": [],
  "description": "Enable the reciprocal square root approximation."
},
{
  "gcc_version": "9.3.0",
  "name": "-mno-low-precision-recip-sqrt",
  "range": [],
  "description": "Disable the reciprocal square root approximation."
},
{
  "gcc_version": "9.3.0",
  "name": "-mlow-precision-sqrt",
  "range": [],
  "description": "Enable the square root approximation."
},
{
  "gcc_version": "9.3.0",
  "name": "-mno-low-precision-sqrt",
  "range": [],
  "description": "Disable the square root approximation."
},
{
  "gcc_version": "9.3.0",
  "name": "-mlow-precision-div",
  "range": [],
  "description": "Enable the division approximation."
},
{
  "gcc_version": "9.3.0",
  "name": "-mno-low-precision-div",
  "range": [],
  "description": "Disable the division approximation."
},
{
  "gcc_version": "9.3.0",
  "name": "-mtrack-speculation",
  "range": [],
  "description": "Enable generation of additional code to track speculative execution through conditional branches."
},
{
  "gcc_version": "9.3.0",
  "name": "-mno-track-speculation",
  "range": [],
  "description": "Disable generation of additional code to track speculative execution through conditional branches."
},
{
  "gcc_version": "10.1.0",
  "name": "-march",
  "range": [
	"armv8-a",
	"armv8.1-a",
	"armv8.2-a",
	"armv8.3-a",
	"armv8.4-a",
	"armv8.5-a",
	"armv8.6-a",
	"native",
	"crc",
	"crypto",
	"fp",
	"simd",
	"sve",
	"lse",
	"rdma",
	"fp16",
	"fp16fml",
	"rcpc",
	"dotprod",
	"aes",
	"sha2",
	"sha3",
	"sm4",
	"profile",
	"rng",
	"memtag",
	"sb",
	"ssbs",
	"predres",
	"sve2",
	"sve2-bitperm",
	"sve2-sm4",
	"sve2-aes",
	"sve2-sha3",
	"tme",
	"i8mm",
	"f32mm",
	"f64mm",
	"bf16"
  ],
  "description": "Specify the name of the target architecture and, optionally, one or more feature modifiers."
},
{
  "gcc_version": "10.1.0",
  "name": "-mtune",
  "range": [
	"generic",
	"cortex-a35",
	"cortex-a53",
	"cortex-a55",
	"cortex-a57",
	"cortex-a72",
	"cortex-a73",
	"cortex-a75",
	"cortex-a76",
	"cortex-a76ae",
	"cortex-a77",
	"cortex-a65",
	"cortex-a65ae"
	"cortex-a34",
	"ares",
	"exynos-m1",
	"emag",
	"falkor",
	"neoverse-e1",
	"neoverse-n1",
	"neoverse-n2",
	"neoverse-v1",
	"qdf24xx",
	"saphira",
	"phecda",
	"xgene1",
	"vulcan",
	"octeontx",
	"octeontx81",
	"octeontx83",
	"octeontx2",
	"octeontx2t98",
	"octeontx2t96",
	"octeontx2t93",
	"octeontx2f95",
	"octeontx2f95n",
	"octeontx2f95mm",
	"a64fx",
	"thunderx",
	"thunderxt88",
	"thunderxt88p1",
	"thunderxt81",
	"tsv110",
	"thunderxt83",
	"thunderx2t99",
	"thunderx3t110",
	"zeus",
	"cortex-a57.cortex-a53",
	"cortex-a72.cortex-a53",
	"cortex-a73.cortex-a35",
	"cortex-a73.cortex-a53",
	"cortex-a75.cortex-a55",
	"cortex-a76.cortex-a55",
	"native"
  ],
  "description": "Specify the name of the target processor for which GCC should tune the performance of the code."
},
{
  "gcc_version": "9.3.0",
  "name": "-mcpu",
  "range": [
	"generic",
	"cortex-a35",
	"cortex-a53",
	"cortex-a55",
	"cortex-a57",
	"cortex-a72",
	"cortex-a73",
	"cortex-a75",
	"cortex-a76",
	"ares",
	"exynos-m1",
	"emag",
	"falkor",
	"neoverse-e1",
	"neoverse-n1",
	"qdf24xx",
	"saphira",
	"phecda",
	"xgene1",
	"vulcan",
	"octeontx",
	"octeontx81",
	"octeontx83",
	"thunderx",
	"thunderxt88",
	"thunderxt88p1",
	"thunderxt81",
	"tsv110",
	"thunderxt83",
	"thunderx2t99",
	"cortex-a57.cortex-a53",
	"cortex-a72.cortex-a53",
	"cortex-a73.cortex-a35",
	"cortex-a73.cortex-a53",
	"cortex-a75.cortex-a55",
	"cortex-a76.cortex-a55",
	"native",
	"crc",
	"crypto",
	"fp",
	"simd",
	"sve",
	"lse",
	"rdma",
	"fp16",
	"fp16fml",
	"rcpc",
	"dotprod",
	"aes",
	"sha2",
	"sha3",
	"sm4",
	"profile",
	"rng",
	"memtag",
	"sb",
	"ssbs",
	"predres"
  ],
  "description": "Specify the name of the target processor, optionally suffixed by one or more feature modifiers."
},
{
  "gcc_version": "9.3.0",
  "name": "-moverride",
  "range": [],
  "description": "Override tuning decisions made by the back-end in response to a -mtune= switch."
},
{
  "gcc_version": "9.3.0",
  "name": "-mverbose-cost-dump",
  "range": [],
  "description": "Enable verbose cost model dumping in the debug dump files."
},
{
  "gcc_version": "9.3.0",
  "name": "-mpc-relative-literal-loads",
  "range": [],
  "description": "Enable PC-relative literal loads."
},
{
  "gcc_version": "9.3.0",
  "name": "-mno-pc-relative-literal-loads",
  "range": [],
  "description": "Disable PC-relative literal loads."
},
{
  "gcc_version": "9.3.0",
  "name": "-msign-return-address",
  "range": [
	"none",
	"non-leaf",
	"all"
  ],
  "description": "Select the function scope on which return address signing will be applied."
},
{
  "gcc_version": "10.1.0",
  "name": "-mbranch-protection",
  "range": [
	"none",
	"standard",
	"pac-ret[+leaf+b-key]",
	"bti"
  ],
  "description": "Select the branch protection features to use."
},
{
  "gcc_version": "10.1.0",
  "name": "-mharden-sls",
  "range": [
	"retbr",
	"blr",
	"all",
	"none"
  ],
  "description": "Enable compiler hardening against straight line speculation (SLS)."
},
{
  "gcc_version": "9.3.0",
  "name": "-msve-vector-bits",
  "range": [
	"scalable",
	"128",
	"256",
	"512",
	"1024",
	"2048"
  ],
  "description": "Specify the number of bits in an SVE vector register."
},
{
  "gcc_version": "10.1.0",
  "name": "-moutline-atomics",
  "range": [],
  "description": "Enable or disable calls to out-of-line helpers to implement atomic operations."
},
{
  "gcc_version": "10.1.0",
  "name": "-mno-outline-atomics",
  "range": [],
  "description": "Enable or disable calls to out-of-line helpers to implement atomic operations."
}